ফোরট্রানে স্ট্রিং Concatenation এবং Substring Extraction
ফোরট্রানে স্ট্রিং ম্যানিপুলেশন অনেকটা সরল, কিন্তু কিছু মূল কৌশল যেমন স্ট্রিং Concatenation (স্ট্রিং যোগ করা) এবং Substring Extraction (স্ট্রিং অংশ বের করা) করার জন্য নির্দিষ্ট সিনট্যাক্স এবং ফাংশন রয়েছে। এই কৌশলগুলি ব্যবহার করে আপনি স্ট্রিংয়ের সাথে কাজ করতে পারবেন।
১. স্ট্রিং Concatenation (স্ট্রিং যোগ করা)
ফোরট্রানে দুটি বা ততোধিক স্ট্রিং একত্রিত বা যোগ করার জন্য // অপারেটর ব্যবহার করা হয়। এটি দুটি স্ট্রিংয়ের মান একত্রিত করে একটি নতুন স্ট্রিং তৈরি করে।
স্ট্রিং Concatenation এর সাধারণ গঠন:
string3 = string1 // string2string1এবংstring2দুটি স্ট্রিং যোগ করে একটি নতুন স্ট্রিংstring3তৈরি হবে।
উদাহরণ:
program string_concatenation
implicit none
character(len=10) :: first_name, last_name, full_name
! স্ট্রিং ইনপুট
first_name = 'John'
last_name = 'Doe'
! স্ট্রিং Concatenation
full_name = first_name // ' ' // last_name ! একটি স্পেস দিয়ে যুক্ত করা হলো
print *, 'Full name: ', full_name ! আউটপুট হবে: Full name: John Doe
end program string_concatenationএখানে:
first_nameএবংlast_nameএর মান যুক্ত করা হয়েছে এবং তাদের মধ্যে একটি স্পেস (' ') যোগ করা হয়েছে।আউটপুট হবে:
Full name: John Doe
Concatenation অপারেটরের বৈশিষ্ট্য:
//অপারেটর দুটি বা তার বেশি স্ট্রিং যোগ করতে ব্যবহৃত হয়।- স্ট্রিংয়ের মধ্যে স্পেস বা অন্য যেকোনো ক্যারেক্টারও যোগ করা যায়।
২. Substring Extraction (স্ট্রিং অংশ বের করা)
ফোরট্রানে একটি স্ট্রিংয়ের অংশ বের করতে (start, length) সিনট্যাক্স ব্যবহার করা হয়। এর মাধ্যমে আপনি একটি স্ট্রিংয়ের নির্দিষ্ট অংশ বের করতে পারবেন।
স্ট্রিংয়ের অংশ বের করার গঠন:
substring = string(start, length)start: স্ট্রিংয়ের শুরু থেকে কোন ইনডেক্স থেকে সাবস্ট্রিং শুরু হবে (১ থেকে শুরু হয়)।length: সাবস্ট্রিংয়ের দৈর্ঘ্য।
উদাহরণ:
program substring_example
implicit none
character(len=20) :: full_name, first_part
! স্ট্রিং ইনপুট
full_name = 'Johnathan Doe'
! Substring Extraction (প্রথম 4 অক্ষর)
first_part = full_name(1:4)
print *, 'First part of name: ', first_part ! আউটপুট হবে: John
end program substring_exampleএখানে:
full_name(1:4)প্রথম ৪টি অক্ষর নিয়েfirst_partসাবস্ট্রিং তৈরি করেছে।আউটপুট হবে:
First part of name: John
Substring Extraction এর বৈশিষ্ট্য:
- স্ট্রিংয়ের প্রথম ইনডেক্স সাধারণত ১ থেকে শুরু হয় (ফোরট্রানে ইনডেক্সিং ১ থেকে শুরু হয়)।
startএবংlengthমান দিয়ে স্ট্রিংয়ের অংশ নির্ধারণ করা হয়।
৩. Substring Extraction এবং Concatenation একসাথে ব্যবহার
এটি সাধারণত প্রয়োজন হয় যখন আপনাকে একাধিক অংশ একত্রিত করতে হয় বা স্ট্রিংয়ের বিভিন্ন অংশ নিয়ে কাজ করতে হয়।
উদাহরণ:
program combined_example
implicit none
character(len=20) :: full_name, first_part, last_part, combined_name
! স্ট্রিং ইনপুট
full_name = 'Johnathan Doe'
! Substring Extraction
first_part = full_name(1:4) ! প্রথম ৪টি অক্ষর
last_part = full_name(10:12) ! ১০ থেকে ১২ ইনডেক্স পর্যন্ত
! স্ট্রিং Concatenation
combined_name = first_part // ' ' // last_part ! প্রথম এবং শেষ নাম একত্রিত করা
print *, 'Combined name: ', combined_name ! আউটপুট হবে: John Doe
end program combined_exampleএখানে:
first_part = full_name(1:4)প্রথম ৪টি অক্ষর বের করেছে।last_part = full_name(10:12)নামের শেষ অংশ বের করেছে।- তারপর দুটি অংশ
//অপারেটর দিয়ে একত্রিত করা হয়েছে। আউটপুট হবে:
Combined name: John Doe
৪. স্ট্রিং ম্যানিপুলেশন ফাংশন
ফোরট্রানে স্ট্রিংয়ের উপর বিভিন্ন প্রক্রিয়া প্রয়োগ করার জন্য কিছু বিল্ট-ইন ফাংশন রয়েছে:
LEN(string): একটি স্ট্রিংয়ের দৈর্ঘ্য ফেরত দেয়।TRIM(string): স্ট্রিংয়ের ডানপাশের অতিরিক্ত স্পেস সরিয়ে দেয়।ADJUSTL(string): স্ট্রিংয়ের বামপাশের অতিরিক্ত স্পেস সরিয়ে দেয়।
উদাহরণ:
program string_functions
implicit none
character(len=20) :: name
integer :: length_of_name
! স্ট্রিং ইনপুট
name = ' Johnathan '
! স্ট্রিংয়ের দৈর্ঘ্য বের করা
length_of_name = len(trim(name))
print *, 'Length of trimmed name: ', length_of_name ! আউটপুট হবে: 10
end program string_functionsএখানে:
trim(name)স্ট্রিংয়ের ডানপাশের অতিরিক্ত স্পেস সরিয়েছে।len(trim(name))স্ট্রিংয়ের দৈর্ঘ্য হিসাব করেছে।
উপসংহার
ফোরট্রানে স্ট্রিং Concatenation এবং Substring Extraction স্ট্রিং ম্যানিপুলেশন করার জন্য অত্যন্ত গুরুত্বপূর্ণ টুল। আপনি সহজেই স্ট্রিংয়ের অংশ বের করতে এবং স্ট্রিং যোগ করতে পারেন। এই কৌশলগুলি কোডের নমনীয়তা বাড়ায় এবং ডেটার প্রক্রিয়াকরণে সহায়ক হয়।
Read more